System and method for secure reciprocal exchange of data

ABSTRACT

A system for transmission of data from a first device operated by a first user includes a wireless device and a database. The wireless device is used by a second user and includes a memory for storage of data. The database is in network communication with the first device and the wireless device. The database receives and stores data from the first device. The database can synchronize a portion of the data from the first device with the memory of the wireless device on a periodic basis that is determined by the second user. The wireless device can include a mobile phone. Data from the first device can include a current mode of access of the first user. The database can synchronize a portion of the data from the first device with the memory of the wireless device automatically according to a predetermined time determined by the second user. Further, the database can synchronize a portion of the data from the first device with the memory of the wireless device whenever the data received by the database from the first device changes. In certain embodiments, the portion of the data from the first device that is synchronized between the database and the memory of the wireless device can be determined by the second user using the second device.

FIELD OF THE INVENTION

The present invention is directed toward a computerized system andmethod that facilitates the exchange of data between a plurality ofauthorized users of the system.

BACKGROUND

The communications world is becoming more and more technologicallyadvanced each year. The era of each person having only one singletelephone number is essentially a thing of the past. With the advent ofcomputer technology, including wireless communications such as mobilephones, personal digital assistants (PDA's), laptop or notebookcomputers, personal computers (PC's) and other electronic devices,keeping track of family, friends, business associates and colleagues,and other acquaintances has become increasingly difficult. Not only doeseach person typically maintain several different phone numbers,electronic mail addresses, home and business addresses and other typesof important information, but such information changes with a greaterfrequency than only a decade previously.

Historically, one staple of the common household or office has been amanually maintained address book or Rolodex organizer. However, withtoday's growing and ever-changing contact information, one can spend asubstantial amount of time writing, erasing and further updating thisimportant data. Even those that have become accustomed to maintaining acomputerized address book are still routinely required to update and/orconfirm the contact information of everyone in their address book in anattempt to keep somewhat current. Also, because it has become a dauntingtask to keep track of each contact's basic contact information,efficiently keeping dozens, hundreds or even thousands of these contactsapprised of one's own recently-changed contact information has becomeeven more complicated. In other words, these types of manually compiledand maintained computer address books have numerous logistical drawbacksand ultimately do not ensure that the information in them is up-to-dateand accurate.

In addition, because there are so many modes (i.e. mobile phone, workphone, home phone, e-mail, text message, etc.) of contacting oraccessing even one person, it is nearly impossible to know the specificmode which will yield the highest success rate at a particular time onany given day. Oftentimes, substantial guesswork is required by tryingtwo, three, four or more different such modes before reaching a desiredcontact. In some cases, none of the modes of access may be successful,such as when the desired contact is staying at the residence of a friendor relative.

Moreover, because of the growing number of different modes of access, agreater likelihood of potentially being contacted by undesirable personsor entities (also commonly known as “spam”) exists. Regrettably, currentefforts of safeguarding against or blocking spammers have enjoyed justlimited success with within certain modes of access. Spamming still runsrampant within other modes of access.

Unfortunately, attempts at creating a computerized address book have notbeen entirely satisfactory. Such address books typically require manualupdating, which can be very time-consuming. Further, these address booksoften require synchronization between a PC, a PDA, a mobile phone and/orother electronic devices to increase the likelihood that consistentinformation is maintained. In addition, some electronic address booksrequire the user to download software onto their computer system inorder to run the programs. With these types of systems, one musttypically be on his or her own device to access such information orother data. Moreover, if the electronic device is ever lost, stolen,broken or destroyed, or if the data on the device becomes lost orunusable e.g. in the case of a hard drive crash, the user may need tocompletely reprogram the device and re-enter all of the data onto thedevice, or obtain the data from a backup system, which may also be notentirely up-to-date. Such an unpleasant experience can be extremelyfrustrating and can require a significant amount of time which mostpeople cannot afford to spend.

In light of the above, a need exists for a manner of keeping track ofone's contacts which requires less maintenance by the user. A furtherneed exists for a way to keep business and/or personal contactinformation up-to-the-minute accurate with a substantially reduced levelof time and effort. Still another need exists to provide a system andmethod that increases the likelihood of successfully accessing anotherperson by the mode desired by that person. Yet another need exists toprovide a method of ubiquitously accessing and/or maintaining importantdata from a greater number of computerized devices.

SUMMARY

The present invention is directed toward a system for transmission ofdata from a first device operated by a first user. In one embodiment,the system includes a wireless device and a database. The wirelessdevice includes a memory for storage of data. In one embodiment, thewireless device is used by a second user. The database is locatedremotely from the first device and the wireless device. The database isin network communication with the first device and the wireless device.The database receives and stores data from the first device. In certainembodiments, the database synchronizes a portion of the data from thefirst device with the memory of the wireless device on a periodic basisthat is determined by the second user.

In some embodiments, the wireless device includes a mobile phone. Inanother embodiment, data from the first device includes a current modeof access of the first user. In other embodiments, the databasesynchronizes a portion of the data from the first device with the memoryof the wireless device automatically according to a predetermined timedetermined by the second user. In one embodiment, the predetermined timeis at least approximately one time per hour, one time per minute or on acontinuous basis. The database can synchronize a portion of the datafrom the first device with the memory of the wireless device when thesecond device queries the database. Further, the database cansynchronize a portion of the data from the first device with the memoryof the wireless device whenever the data received by the database fromthe first device changes. In certain embodiments, the portion of thedata from the first device that is synchronized between the database andthe memory of the wireless device can be determined by the second userusing the second device. In another embodiment, the database canautomatically synchronize a portion of the data from the first devicewith the memory of the wireless device at a predetermined time.

The present invention is also directed to a plurality of methods fortransmitting data from a first device operated by a first user to awireless device.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features of this invention, as well as the invention itself,both as to its structure and its operation, will be best understood fromthe accompanying drawings, taken in conjunction with the accompanyingdescription, in which similar reference characters refer to similarparts, and in which:

FIG. 1 is a diagram of a computer system having features of the presentinvention that illustrates the interconnectivity among a plurality ofdevices and a server using a communications network;

FIG. 2 is a flow diagram illustrating one embodiment the computer systemhaving features of the present invention, including various functionsavailable during usage of the computer system;

FIG. 3 is a flow diagram of one embodiment of a log in process using thepresent invention;

FIG. 4A is an embodiment of a contact list screen having features of thepresent invention;

FIG. 4B is another embodiment of the contact list screen having featuresof the present invention;

FIG. 4C is an embodiment of a contact screen having features of thepresent invention;

FIG. 5A is an embodiment of a user data screen having features of thepresent invention;

FIG. 5B is an embodiment of a customizable data screen including aplurality of data fields;

FIG. 6A is an embodiment of an add contact screen having features of thepresent invention;

FIG. 6B is an embodiment of a confirmation screen for adding a Contact;

FIG. 6C is an embodiment of an authorization request screen havingfeatures of the present invention;

FIG. 6D is another embodiment of the authorization request screen havingfeatures of the present invention;

FIG. 6E is a diagram illustrating authorization of one or more modes ofaccess between a plurality of Users of the computer system;

FIG. 6F is an embodiment of an authorization confirmation screen foradding a Contact;

FIG. 6G is an embodiment of a portion of a table illustrating arequirement by a database of the computer system for reciprocity betweena plurality of Users of the computer system;

FIG. 6H is a flow diagram illustrating a requirement for reciprocitybetween a plurality of Users of the computer system;

FIG. 7A is a flow diagram illustrating one or more determinations by thedatabase for providing access to data between a plurality of Users ofthe computer system;

FIG. 7B is an embodiment of a contact view screen having features of thepresent invention;

FIG. 7C is another embodiment of the contact view screen having featuresof the present invention;

FIG. 7D is an embodiment of a text message screen having features of thepresent invention;

FIG. 7E is another embodiment of the text message screen having featuresof the present invention;

FIG. 7F is another embodiment of the text message screen having featuresof the present invention;

FIG. 7G is an embodiment of an electronic mail screen having features ofthe present invention;

FIG. 7H is another embodiment of the electronic mail screen havingfeatures of the present invention;

FIG. 8 is an embodiment of a remove contact screen having features ofthe present invention;

FIG. 9A is an embodiment of a contact properties screen having featuresof the present invention;

FIG. 9B is an embodiment of a mobile list screen having features of thepresent invention;

FIG. 10A is an embodiment of an immediate mode of access screen havingfeatures of the present invention;

FIG. 10B is an embodiment of an immediate mode of access schedule screenhaving features of the present invention;

FIG. 10C is another embodiment of the immediate mode of access schedulescreen having features of the present invention;

FIG. 10D is another embodiment of the immediate mode of access schedulescreen having features of the present invention;

FIG. 11 is an embodiment of a synchronization screen having features ofthe present invention; and

FIG. 12 is a diagram illustrating the storage of data in the database ofthe computer system.

DESCRIPTION

The present invention provides a computer system (also referred toherein simply as a “system”) and method that facilitates the transmittaland/or retrieval of personal and business information or other types ofdata by and between one or more users (hereinafter “User”) of thesystem. Using a reciprocal authorization method, a hierarchical securitysystem, and/or an easier and more efficient manner of modifyinginformation to be provided to other users, each User can access andprovide current data with greater security and accuracy.

As an overview, FIG. 1 is a simplified block diagram that illustrates acomputer system 10 including a server 12 in communication with aplurality of devices 14A-D which are operatively connected togetherusing a communications network 16, such as the Internet. The server 12includes computer hardware having one or more processors. Further, theserver can include software (not shown) that interfaces with and/orconnects to the database 17. As used herein, the term “database” caninclude one or more software applications, which can include one or moreweb applications, that interface with and/or connect to the database 17to perform the functions provided herein. As one example, the softwarecan also be used for formatting various screens illustrated herein thatdisplay data from the database 17 or provide functionality associatedwith the database 17. Other examples of the functionality of thesoftware applications are provided herein by referring to the variousfunctions performed by the database 17.

The server 12 illustrated in FIG. 1 can function as part of anon-distributed network which includes a database 17 (illustrated inphantom) that stores data and In an alternative embodiment, the server12 can be part of a distributed network that utilizes a plurality ofcomponents or nodes in one or more separate geographical locations, witheach component performing one or more separate functions of the system.In the embodiment illustrated in FIG. 1, the server 12 can manage and/orcontrol functions related to communications among and between thedevices 14A-D, as well as data and other information or communicationtransfers between the database 17 and one or more of the devices 14A-D.

Each of the devices 14A-D can include necessary hardware and softwarefor initiating, controlling and/or displaying images that are generatedduring usage of the system 10. Each device 14A-D is typically a computerhaving processing and program execution capability. In the embodimentillustrated in FIG. 1, the first device 14A can be a notebook computer,the second device 14B can be a desktop computer such as a personalcomputer (PC), the third device 14C can be a wireless device such as apersonal digital assistant (PDA), and the fourth device 14D can beanother wireless device such as a wireless phone (also sometimesreferred to herein as a “mobile phone”). Importantly, the presentinvention is suitable for use with any wired or wireless device that canaccess an integrated network such as the Internet. Moreover,identification of the types of devices 14A-D in this embodiment is forease of discussion only. It is recognized that any of the devices 14A-Dcan be any type of wired or wireless device suitable for use with thepresent invention, and such devices are not restricted to those deviceslisted above.

The communications network 16 can include a number of communicationsub-systems or apparatuses. Each device 14A-D is able to electronicallycommunicate with the communications network 16 using an Internet ServiceProvider (ISP) or an online service provider, such as America Online,AT&T or Earthlink as non-exclusive examples. Access to such serviceproviders is achieved through local telephone, cable, digital subscriberline (DSL) or another suitable communications connection from eachdevice 14A-D. However, the system operates equally as effectively evenwhen the devices 14A-D are electrically decoupled from one another 14A-Dand/or the database 17.

A mouse 18, a keyboard 20, a keypad 22, auditory or optical recognitiondevices (not shown) or another input device can be included in one ormore of the devices 14A-D enables the User to initiate and/or carry outthe User's commands. A computer display screen 24 can provide the Userwith visual data and/or other information from the database 17 whileusing the system 10. Additionally, audio information from the database17 can be queried, stored and/or communicated to the User through thecorresponding device 14A-D.

The server 12 can also communicate with the communications network 16such as the Internet through a local connection and a service providerto the network. The server 12 can store all user data in the database17, which can be a Structured Query Language (SQL) database, forexample. Further, the server 12 can access the communications network 16to transfer or transmit information and/or data to the devices 14A-D. Asprovided herein, each User can have a unique user identifier that allowssuch User to access the database 17 using any or all of the devices14A-D. Alternatively, each of the devices 14A-D can have an addressassociated with it that the server 12 uses in connection withcommunication transfers. Additionally, the server 12 has an address thatenables desired communications from the devices 14A-D to reach theserver 12 in the context of initiating the transmittal, storage and/orretrieval of data. Moreover, in one embodiment, the data transmittedbetween the server 12 and the devices 14A-D is encrypted using SecureSockets Layer (SSL) or another suitably effective data encryptionmethod.

The server 12 can include a plurality of server units forming a serverarray (not shown) that can function as a multi-processing unit capableof handling requests and/or queries from a substantial number of devices14A-D, e.g. thousands or millions. With this design, a large number ofdata transfers can occur simultaneously from a plurality of devices. Inone embodiment, no downloading of software is required by the devices14A-D to access the database 17. Alternatively, each device 14A-D canhave identical or substantially similar software which can be obtainedby downloading the software from the server 12.

As described herein, each User of the system 10 can compile a list ofindividuals or entities with whom the User wants to keep in contactand/or exchange information. The list of contacts is also referred toherein as a contact list, which includes certain information or otherdata regarding the individual or the entity (hereinafter a “Contact”).As used herein, the terms “User” and “Contact” are interchangeable. Inother words, in the embodiments provided herein, a Contact can be aUser, or vice versa. Moreover, for the sake of simplicity, thedescription provided herein focuses on a limited number of Users andContacts. However, it is recognized that the present invention canaccommodate any number of Users and/or Contacts.

As provided herein, the present invention automatically provides a Userwith current personal and/or business information as input by eachContact into the database 17. Stated another way, in one embodiment, theUser does not need to manually input any information of the User'sContacts in order to receive immediate, up-to-the-second data regardingeach Contact in the User's contact list. The User can also provide hisor her own data to a limited number or all of the Contacts without thetime requirement of individually providing such information to eachseparate Contact. In other words, such information can be providedcategorically, accurately and efficiently. Moreover, the level or extentof information to be provided to each Contact can be preciselycontrolled by the User. In one embodiment, the agreement to exchangeinformation between two Users must be reciprocal, or no information istransmitted between the two Users.

As background, the present invention is suitable for use over theInternet by using the World Wide Web. Further, the system 10 can alsoeffectively be used in an Intranet environment. Additionally, the system10 can be used in a Wide Area Network (WAN) and/or a Local Area Network(LAN) setting. Moreover, the present invention performs equally well ina wired network over which the information is transmitted, or in awireless environment.

FIG. 2 is a simplified flow diagram illustrating one embodiment of someof the features and functions of the present invention. It is recognizedthat FIG. 2 is merely illustrative and is not intended to be limiting inany manner. In an Internet setting, the User can access a system website(step 210) from any device that has web browser capabilities. Forexample, such access can occur from the device's web browser (i.e.Internet Explorer, Netscape or Mozilla as non-exclusive examples) or aWireless Application Protocol (WAP) browser (i.e. Nokia WAP browser orOpenwave WAP browser as non-exclusive examples) for wireless devices byinputting the appropriate uniform resource locator (URL) to gain accessto a home page of the facilitating website (step 210). Alternatively, anapplication can be downloaded and/or installed onto a device, which canuse the Internet to connect to the database 17. The database 17 can thenbe queried to populate the application downloaded and/or installed ontothe device, without the necessity of a web browser.

In the embodiment illustrated in FIG. 2, the User can then select fromvarious available options. For example, the User can elect to seekinformation regarding the system (step 212), register with the system(step 214), or log in to the system (step 216) to access additionalfunctions. It is recognized that the options available to the User asillustrated in FIG. 2 are not exclusive of all options that can beexercised by the User, but are representative examples of one or moretypes of options commonly available to the User. Additionally, not alloptions illustrated in FIG. 2 are required for the system 10 to beeffective.

For example, obtaining information (step 212) can provide the User withinformation about the system 10, which can be in the form of FrequentlyAsked Questions (FAQ's) (step 218), services provided to Users of thesystem, security information such as retrieval of a lost password (step220), requests for feedback, and other relevant information, and mayinclude hyperlinks to sub pages for providing this information.

The User can opt to register (step 214) with the system 10. Uponselecting the registration option (step 214), the User can be requestedto review terms of a user agreement (step 222), and indicate acceptanceor rejection of the terms. In the event the User accepts the terms ofthe agreement, the User can then register with the system (step 224).During the registration process (step 224), the User provides basicinformation to the system, which can include the User's name and/orelectronic mail address (step 226), a password (step 228) and/or ausername (step 230), for example. The information input by the User isprovided to the database 17 (illustrated in FIG. 1), and a uniqueuser-specific identifier can be provided to the User by the database 17.The user-specific identifier can be a numeric, alphanumeric oralphabetical identifier, or any other suitable unique identifier such asa username chosen by the User or by the database 17. If chosen by thedatabase 17, the identifier can be provided to the User by electronicmail, facsimile, or by another suitable means, provided a requisitelevel of security can be maintained. Additionally, procedures can beavailable to the User in the event the User forgets his or heruser-specific identifier.

FIG. 3 is a flowchart that outlines the process of logging in (step 216)to the website (step 210). Once the User has elected to log in (step320), the User is prompted for basic information that can include theUser's unique identifier, username and/or password, for example.Additional information can also be requested to verify the User'sidentity. The database 17 is queried (step 322) to determine if theinformation submitted by the User is consistent with records maintainedin the database 17. The database 17 then determines whether or not thelog in information, i.e. the password and identifier input by the Usermatches the corresponding information in the database 17 for the User(step 324) based on the data input by the User at the time ofregistration (step 224 illustrated in FIG. 2). If it is determined thatthe log in information provided by the User does not match theinformation provided at the time of registration (step 224), the log inis invalid. The User is notified that the attempt to log in wasunsuccessful, and the User is returned to the User Log In page (step320). The User can then attempt to log in (step 216) once again,although provisions are included to limit the number of unsuccessful login attempts over time by a User. If, however, the database 17 determinesthat the User has correctly provided the required log in information,the log in is valid, and the User is then provided access to the User'scontact list (step 232).

Referring back to FIG. 2, once the User accesses his or her contact list(step 232), the User can have one or more options that can be performedin any desired order, which can vary from the order provided herein.Further, each of the options need not be exercised by the User at anygiven web session. In this embodiment, some of the general functionsthat the User can perform include editing and/or updating (step 234) theUser's own information (step 236) and/or password (step 238) currentlyin the database 17. The User can also add a new Contact (step 240), andview and/or access information from one or more Contacts (step 242),which can include sending an electronic mail message to the Contact(step 244), sending a text message to the Contact (step 246) and/oraccessing a website of the Contact (step 248). The User can also removea Contact (step 250) from the User's contact list 232. Further, the Usercan view and/or edit the properties (step 252) of the Contacts, whichcan include assigning or changing a group for any Contact (step 254),assigning or editing a Clearance Level for any Contact (step 256) and/oradding or removing a Contact to or from the User's Mobile List (step258). The User can print (step 260) a portion or all of the User'scontact list 232, and view a User directory (step 262) of some or allUsers that have registered with the system 10. In addition, the User canaccess an immediate mode of access (step 264) of any Contact (step 266)or the User can edit the User's own immediate mode of access (step 268).Moreover, the User can create or edit a future mode of access scheduleof the User (step 270), and/or directly send a text message (step 272)to a Contact, as non-exclusive examples.

It should be recognized that each of the output screens described hereinare representative of an output of the database 17 (illustrated inFIG. 1) including information stored in the database 17. Further, theactual screen view of any of the other exemplar screens described hereincan vary due to the vast creativity that can be used to generate anyscreen, including the colors, font, size, layout, functionality,content, sound, etc. For example, the positioning of the functions canbe similar to that illustrated in the Figures, or such positioning canvary. The type of functions included on each screen can vary widely fromthat illustrated in the Figures, provided the requisite functionality isincluded to carry out the intent of the present invention as providedherein.

FIG. 4A illustrates one representative embodiment of a contact listscreen 432 which is accessed once the User gains access to the contactlist 232. The screen view illustrated in FIG. 4A is particularly suitedfor a PC, a notebook computer or the like, which typically utilizescreens having relatively large dimensions. Alternatively, appropriatelyformatted screen views can be used with any wireless devices, such asmobile phones, PDA's, handheld electronic mail devices, pagers, etc.,which commonly utilize screens having smaller dimensions.

In this embodiment, a hypothetical User (Bob) has accessed his contactlist screen 432, which also includes additional functions that areeasily accessible. In the embodiment illustrated in FIG. 4A, three ofthe User's Contacts appear on the screen in a contact viewing region434. The amount of information included in the contact viewing region434 can vary. In one embodiment, a predetermined number of Contacts areaccessed in the contact viewing region 434. In an alternativeembodiment, the User can specify the number or type of Contacts that canbe viewed at one time on the User's contact list screen 432.

In the embodiment illustrated in FIG. 4A, the contact viewing region 434includes the name 436 of each Contact, a group designation 438 for eachContact, a unique user-specific identifier 440 for each Contact, and animmediate mode of access 442 for each Contact. It is recognized,however, that the amount and/or type of information and the number offunctions illustrated in FIG. 4A can be varied to suit the designrequirements of the database 17 and the system 10, and that FIG. 4A ismerely representative of one example of the contact list screen 432. Forexample, the information included in the contact viewing region 434 canbe customized by the User so that the name of each Contact is on the farleft side of the contact viewing region 434, with the other informationappearing to the right of the name. Alternatively, for instance, theUser may desire more or less information for each Contact to bedisplayed.

The group designation 438 indicates one or more groups that the User hasdesignated for each Contact. As provided in greater detail below, theUser can organize the Contacts into groups that can make the number ofContacts in the User's contact viewing region 434 more manageable.

The user-specific identifier 440 can be any series of numbers, lettersor other symbols that the Contact has chosen, or that has been providedto the Contact by the database 17. For example, in FIG. 4A, Jane Doe haseither been assigned or has chosen the number 1145 as her user-specificidentifier 440.

The immediate mode of access 442 for each Contact instantly provides theUser with a specific way that the User can currently access or otherwisecontact one or more such Contacts on the User's contact list. Theimmediate mode of access can also be referred to herein as a “virtuallocation” or a “means of access”. Stated another way, each Contact candetermine and then input into the database 17 the precise mode that theUser can access such Contact in real time, e.g. at the moment that theUser is viewing the immediate mode of access 442. For example, if Bobwants to know how he can reach Betty Jones, Betty has provided herimmediate mode of access 442, which is a phone number (555-555-4001)where she can be contacted at that moment in time. From the perspectiveof Bob, he may be completely unaware of Betty's physical or geographicallocation, but he knows he can reach Betty using the immediate mode ofaccess 442 Betty has provided. Should Betty update her immediate mode ofaccess 442, Bob's contact list would accurately reflect the updatedimmediate mode of access 442 input by Betty.

The type of information that can appear as the immediate mode of access442 can vary depending upon the information provided to the database 17by each Contact. For instance, the immediate mode of access 442 can bein the form of a home telephone number, a work telephone number, amobile phone number, an electronic mail address, a pager number, anactual geographical address or location, a message service number suchas a text messaging number, or any other suitable mode of access. As afurther example, the Contact may be staying at a cabin in the mountainsrented by her brother-in-law. The Contact can input a phone number ofthe cabin or the Contact's mobile phone as the Contact's immediate modeof access 442, and this information can then be accessed by any Userwith whom the Contact has the appropriate level of reciprocity or hasotherwise agreed can view the Contact's immediate mode of access 442, asprovided herein.

Alternatively, the Contact is not required to provide any immediate modeof access 442, and can simply leave the data field blank, or choose“None”, as non-exclusive examples. Still alternatively, the Contact canprovide any specific information she desires, such as directions to aresidence, or a note or instruction that she would like certain Users tosee upon accessing such Users' own contact lists which show Betty as aContact. Because of the wide variety of immediate modes of access 442that can be provided to the database 17 by each Contact, the foregoingexamples are merely representative, and are not intended to be limitingin any way.

The User can also view the User's own immediate mode of access 444 fromthe contact list screen 432. This immediate mode of access 444 istransmitted to all Contacts on Bob's contact list 232 whom Bob hasagreed to provide such access, e.g. Contacts on Bob's contact list 232that have the requisite clearance level, as explained below. Thisfeature allows the User to note what the User has designated as his ownimmediate mode of access 444, without having to navigate to other areasof the website for such information. For example, in the event Bob hasforgotten to change his immediate mode of access 444 from his mobilephone to his home phone once he has arrived home, Bob could instantlysee his oversight and change his immediate mode of access 444accordingly.

In this embodiment, the User can use a group selection menu 446 todetermine which groups of Contacts are displayed at a given time. Forexample, if the User is seeking information from certain family members,the User can select a “Family” group from the group selection menu 446,causing only those Contacts the User has designated as “Family” toappear in the contact viewing region 434. As provided in greater detailbelow, any number of different types of groups can be used in the groupselection menu 446, such as “Family”, “Business”, “Friends”, “All”,“Special”, etc. With this design, the User can more readily andefficiently access information regarding a specific Contact on theUser's contact list without the need of wading through hundreds orthousands of individual Contacts.

The contact list screen 432 can also include additional informationand/or functions. For example, from the contact list screen 432illustrated in FIG. 4A, the User can update or otherwise modify theUser's own information. In the embodiment illustrated in FIG. 4A, forexample, the User can select a hyperlink entitled My Data 234, which canallow the User to input data specific to the User. In one embodiment,the User is then taken to another screen that provides the User withvarious options.

FIG. 4B is another embodiment of the contact list screen 432 which isaccessed once the User gains access to the contact list 232 from awireless and/or handheld device such as a mobile phone 14D (illustratedin FIG. 1). In this embodiment, the User may need to navigate throughone or more screens to obtain the functionality that can be found in thecontact list screen 432 illustrated in FIG. 4A. As illustrated in FIG.4B, the contact list screen 432 can include the names 490 of theContacts, through which the User can scroll to locate one or morespecific Contacts. Once the specific Contact is located, the User canhighlight and select the Contact to reveal another screen which providesvarious data fields for information input by the Contact.

FIG. 4C is an embodiment of a contact screen 433 that is accessible witha wireless device such as a mobile phone 14D (illustrated in FIG. 1).The contact screen illustrated in FIG. 4C provides the name of theContact, the immediate mode of access 442 for the Contact, and a list ofadditional functions that the User can select to navigate to otherscreens that may contain data input by the Contact or may includeadditional functionality. In this embodiment, the contact screenillustrated in FIG. 4C includes functions such as viewing the data inputby the Contact 242, synchronizing the data input by the Contact with thememory of the mobile phone 274, sending electronic mail to the Contact244 through the database 17 (illustrated in FIG. 1), sending a textmessage to the Contact 272, and viewing and/or modifying the User'sproperties for the Contact 252. It is recognized that additionalfunctions as provided herein can be accessed from the contact screen 433by scrolling up or down the contact screen 433, or by selecting one ofthe visible functions illustrated in FIG. 4C.

FIG. 5A is an example of a user data screen 534 on which the User canedit the User's own information 535, change the User's password 537, orreturn 539 to the User's contact list screen 432 (illustrated in FIG.4A). It is recognized that additional options can also be provided tothe User. However, for the sake of simplicity, the user data screen 534includes only the foregoing options. Further, as with any of the screensprovided herein, the title of the screen is provided for convenienceonly, and can vary from those indicated herein.

FIG. 5B is one embodiment of an edit Information screen 535A that theUser can be taken to in order for the User to enter, manipulate, modifyor otherwise update the User's own data in the database 17 (illustratedin FIG. 1). In this embodiment, the User can input data into one or moredata fields 541 (various examples illustrated in FIG. 5B). Any number ofdata fields 541 can be included on this screen 535A. Further, the typeof information requested in each data field 541 can be varied to suitthe design requirements of the system 10. For example, in the embodimentillustrated in FIG. 5B, the User can input data into the database 17relating to personal information, home address and phone numbers, workinformation, and on-line and/or mobile device information asnon-exclusive examples. In one embodiment, the data fields 541 can becategorized, as illustrated in FIG. 5B. Alternatively, the data fields541 can be separated by additional or different categories, or notcategorized at all.

Any relevant data can be requested and input into the database 17 by theUser. For instance, the data fields 541 can request information relatingto the User's medical condition, financial information, insuranceinformation, legal information, important dates, family history,personal notes by the User, and/or basically any other information thatmay be desirable or useful to one or more of the User's Contacts, andwhich the User wants to provide to such Contact(s). It should berecognized that the data fields 541 illustrated in FIG. 5B are not inany way intended to be limiting in the type of information and/or datathat can be provided by the User into the database 17. For example, datathat can be provided to and/or retrieved from the database 17 can notonly include text information, but such data can also include audioand/or video information.

Additionally, in one embodiment, the User is also requested to select aprivacy level 543 for one or more data fields 541. In general, theprivacy level 543 is used in conjunction with a clearance level (notshown in FIG. 5B) that the User assigns to each Contact to customizewhich data fields 541 of the User each Contact in the User's contactlist will be able to view, as described in greater detail below. In theembodiment illustrated in FIG. 5B, the User can select the privacy level543 from a drop-down menu. Alternatively, the privacy level 543 can bemanually input, or selected in any other suitable manner. In anotherembodiment, a default privacy level 543 is provided for each data field541, e.g. “Medium”, although the default privacy level setting can beestablished at any level as required by the User.

In this embodiment, the User can specify the privacy level to be “High”,“Medium” or “Low”. However, any type of hierarchical levels can be used.For example, a scale of 1 to 5, first to tenth, none to all, least tomost, or any other suitable scale can be used. As an overview, providedthe clearance level assigned to the Contact is at least as great as theprivacy level 543 of a particular data field 541, the Contact will beable to view such data field 541. Conversely, if the clearance level forthe Contact is hierarchically lower than the privacy level 543, theContact will not be able to view the particular data field 541.

In an alternative embodiment, the User can toggle each data field 541between an “on” position and an “off” position for each Contact. In thisembodiment, no clearance level needs to be assigned to the Contactbecause access to the data fields 541 by the Contact are solelycontrolled by this binary type of privacy level 543.

Once the User has input data into the database 17 to the User'ssatisfaction, the User can then be asked to update the database 17 orcancel the recently-input data.

Additionally, the User can elect to change the User's password. Forexample, from the user data screen 534 (illustrated in FIG. 5A), theUser can select the Change My Password hyperlink 537 which will take theUser to a screen (not shown) that allows the User to change the User'spassword for security reasons or any other purpose. Additionally, theUser can select a Return to My Contacts hyperlink 539 that takes theUser back to the User's contact list screen 432 (illustrated in FIG.4A).

The User can add any number of Contacts to the User's contact list 232.In one embodiment, the User can select an Add New Contact 240 optionfrom the contact list screen 432 (illustrated in FIG. 4A). By selectingthis option, the User can be taken to another screen havingfunctionality allowing the User to add a Contact.

FIG. 6A is an embodiment of an add new contact screen 640, which can beaccessed from the “Add New Contact” hyperlink 240 (illustrated in FIG.4A). From the add new contact screen 640, the User can specify a desiredContact that the User desires to add to the User's contact list 232(illustrated in FIG. 4A). In this embodiment, the User can input anelectronic mail address of the desired Contact, or can input theuser-specific identifier, e.g. #1001, of the Contact if known to theUser. In alternative embodiments, the User can input any other relevantinformation that will specifically identify the desired Contact. Stillalternatively, the User can utilize a hyperlink from the User directory262 (depicted in FIG. 2), as described in greater detail below.

Further, in the embodiment illustrated in FIG. 6A, the User can selectan initial clearance level 642 for the desired Contact. As indicatedabove, the clearance level 642 operates in conjunction with the privacylevel 543 (illustrated in FIG. 5B) to determine which data fields 541(illustrated in FIG. 5B) entered into the database 17 by the User theContact will be able to view. In an alternative embodiment, theclearance level can be assigned to the desired Contact at a later pointin time, e.g. once the desired Contact authorizes the User to gainaccess to the desired Contact's data.

The User can select from a plurality of clearance levels 642 for eachContact, which can be in the form of a drop-down menu 644 or anothersuitable method for selecting the clearance level 642. Similar to theprivacy level 543 designations, the clearance level 642 designations canvary. In one embodiment, the clearance levels 642 are hierarchical suchthat the clearance level 642 can be either “High”, “Medium” or “Low”. Inthis example, a Contact assigned by the User with a “High” clearancelevel 642 can have access to a greater number of the User's data fields541 than a Contact having a “Medium” or “Low” clearance level 642.Further, a Contact having a “Medium” clearance level 642 can have accessto a greater amount of the User's data than a Contact having a “Low”clearance level 642. With this design, the User can control and/orcustomize the amount of data, and the specific types of data, that canbe accessed by each Contact in the User's contact list.

Alternatively, the clearance levels 642 can be on a numeric scale, i.e.1 through 3, 1 through 5, 1 through 10, etc. Still alternatively, anyother suitable hierarchical system can be utilized for determiningclearance levels 642. Generally, the greater number of designations forthe clearance levels 642 and privacy levels 543, the more precisely theUser can control the Contact's access to the User's data in the database17. In one embodiment, the clearance level 642 of the Contact is notspecifically revealed to the Contact, but is only manifested by theextent of information to which the Contact has access from the User.Alternatively, the Contact can be provided with access to the clearancelevel 642 that has been assigned by the User for that Contact. In eitherevent, the Contact is unable to directly modify the clearance level 642assigned to that Contact by the User.

Once the user-specific identifier and the clearance level are input intothe database 17 by the User as illustrated in FIG. 6A, the database 17is queried to determine if the user-specific identifier is valid, or ifthe user-specific identifier is a duplicate Contact on the User'scontact list 232. If the user-specific identifier is valid and is not aduplicate in the User's contact list 232, the database 17 is queried toinsert specified information of the new Contact into the User's contactlist 232. In one embodiment, if the User is already authorized by theContact to view some or all of the Contact's data, the name of theContact can appear in the User's contact list 232. If the User is notauthorized to view the Contact's information, in one embodiment, onlythe user-specific identifier or other non-personal information appearsin the User's contact list 232.

FIG. 6B is an embodiment of a notification screen 646 which confirms tothe User that the User has added a desired Contact to the User's contactlist 232 (illustrated in FIG. 4A). In the embodiment illustrated in FIG.6B, the User has added a Contact with the user-specific identifier of#1001. Further, in one embodiment, the desired Contact can be sent anelectronic mail message requesting action on the part of the desiredContact to either accept or reject the User's request for authorization.The electronic mail message can be customizable so that the User canpersonalize the message to the desired Contact. Alternatively, theelectronic mail message can be predetermined and unalterable.

FIG. 6C is an embodiment of an authorization screen 648 that can be sentby the database 17 (illustrated in FIG. 1) to the desired Contactfollowing the User adding the desired Contact to the User's contact list232 (illustrated in FIG. 4A). In this embodiment, the desired Contactcan be taken directly to this authorization screen 648 upon logging onto the system 10. Alternatively, the desired Contact can be directed tothe authorization screen 648 at another time while using the system 10.

In this embodiment, the desired Contact is provided the name 650 of theperson or entity (John Johnson) requesting authorization from theContact. The desired Contact is requested to either authorize 652 theUser to gain access to some or all of the desired Contact's data, orreject 654 such authorization, thereby denying any access by the User tothe data input by the Contact into the database 17. In the event thedesired Contact provides authorization to the User, the Contact can thenselect a clearance level 656 that is applicable only to John Johnsonfrom a drop-down menu 658 or another suitable selection method. Withthis design, the Contact can control the data input by the Contact towhich John Johnson has access, as described herein.

FIG. 6D is another embodiment of the authorization screen 648A that canbe sent by the database 17 (illustrated in FIG. 1) to the desiredContact following the User adding the desired Contact to the User'scontact list 232 (illustrated in FIG. 4A). In this embodiment, theContact can also determine which modes of access 660 the User isauthorized to use in order to communicate with the Contact. In thisembodiment, the Contact can select among various predetermined modes ofaccess 660, such as electronic mail, telephone, wireless phone, wirelessmessage, and instant message, which are provided merely asrepresentative examples. It is recognized that numerous other modes ofaccessing an individual or entity exist, and that the present inventioncan be equally effective with any such mode of access 660.

In this embodiment, the Contact has authorized the User to accessspecific modes of access 662 indicated by the Contact, namely, telephoneand wireless phone. Thus, when the User views the data of the Contact,the User will be provided access to the Contact's telephone number(s)and wireless phone number(s). Further, the Contact has determined thatthe authorized modes of access 662 for the User to communicate with theContact are also by telephone and wireless phone. To the extent that thesystem 10 controls direct access between the User and the Contact usingthe stated modes of access 660, any attempt by User to view anunauthorized mode of access 664, and/or contact the Contact by suchunauthorized mode of access, i.e. electronic mail, wireless message orinstant message, would be denied by the system 10. With this design, thesystem 10 can inhibit or prevent contact between the User and theContact by modes not authorized by the Contact, thereby reducingunwanted solicitations, spammers, telemarketers, and the like.

FIG. 6E is a simplified diagram illustrating one embodiment of how eachUser can use the authorization process outlined in FIG. 6D to specifyone or more modes of access 660 for each Contact on the User's contactlist. In this manner, the User can control (i) access to data whichincludes particular modes of access 660 of one or more other Users,and/or (ii) by which modes of access 660 such User can be contacted byone or more of the other Users. In this embodiment User A, User B andUser C have authorized each other to access some or all of each other'sdata in the database 617. As illustrated in FIG. 6E, each User accessesthe database 617 via the Internet. Specifically, User A can authorizeUser B to access any of the eight modes of access 660 (1-8) listed inFIG. 6E so that when User B retrieves User A's data from the database17, User B will be allowed to view each of the numbers (or other data)associated with the eight specified modes of access 660. Additionally oralternatively, User A can authorize User B to utilize any of the eightmodes of access 660 (1-8) to communicate with User A. In this example,User B has authorized User A to access User B's mobile phone #1 and textmessage number modes of access 660 (2 and 6), and/or has authorized UserA to utilize either of these modes of access 660 (2 and 6) tocommunicate with User B.

Somewhat similarly, User A has authorized User C to access User A'sfacsimile, mobile phone #1, work phone and text message number modes ofaccess 660 (1, 2, 5 and 6), and/or has authorized User C to utilize thesame modes of access 660 to communicate with User A. User C hasauthorized User A to access User C's facsimile, mobile phone #1, homephone and electronic mail #2 modes of access 660 (1, 2, 4 and 8), and/orhas authorized User A to utilize the same modes of access 660 toactually communicate with User C.

In this example, User B also has authorized User C to access User B'smobile phone #2, work phone, text message number and electronic mail #1modes of access 660 (3, 5, 6 and 7), and/or User B has authorized User Cto utilize such modes of access 660 to actually communicate with User B.User C has authorized User B to access User C's home phone andelectronic mail #1 modes of access 660 (4 and 7), and/or User C hasauthorized User B to utilize these same modes of access 660 tocommunicate with User C.

FIG. 6F is an embodiment of a confirmation screen 668 that the Contactcan receive once the Contact has authorized the User (John Johnson) togain access to some or all of the Contact's data input by the Contactinto the database 17 (illustrated in FIG. 1). As indicated, anelectronic mail can also be automatically sent to the User, notifyingthe User that the Contact has accepted the User's request for authorityfor the User to access the Contact's data from the database 17.

The methodology for adding a Contact can vary depending upon the designrequirements of the database 17. When adding a desired Contact, thisContact may or may not already be registered with the system 10. If thedesired Contact has previously registered (step 214 illustrated in FIG.2) with the system 10, a first protocol can be followed by the database17. If the desired Contact has not previously registered with thesystem, a second protocol can be followed. The first and secondprotocols can vary depending upon the requirements of the system 10.

In one embodiment of the system 10, the database can require reciprocitybetween the User and the Contact before (i) any data input into thedatabase 17 by the Contact can be accessed by the User, or (ii) any datainput into the database 17 by the User can be accessed by the Contact.Thus, in this embodiment, in order for the User to gain access to atleast a portion of the data input by the Contact, the User must alsoprovide the Contact with access to at least a portion of the data inputby the User. Stated another way, in this embodiment, there must be areciprocal agreement between the User and the Contact to shareinformation, although the extent of the information shared can vary sothat the information shared can be disparate as between the User and theContact. In other words, the User may agree to provide the Contact withaccess to certain data fields 541 (illustrated in FIG. 5B), while theContact agrees to provide the User with access to all data fields 541.

In an alternative embodiment, the User and the Contact must agree toshare information between them to a substantially similar degree. Forexample, the system 10 can require that both the User and the Contacthave clearance levels 642 (illustrated in FIG. 6A) that are either thesame, or within a predetermined number of hierarchical steps from oneanother. In yet another embodiment, the agreement to share does not needto be reciprocal unless one of the User and the Contact so declares. Instill another embodiment, the User can manually enter information and/ordata relating to a Contact who has not as yet authorized the User toaccess the Contact's data from the database, or who has not as yetregistered with the system 10.

For example, in embodiments where a reciprocal agreement is requiredbetween the User and a desired Contact, in one embodiment of the firstprotocol, the User can begin the process of adding the desired Contactby inputting the appropriate user-specific identifier for the newContact when prompted by the database 17. Alternatively, the User caninput different information specific to the Contact such as anelectronic mail address of the Contact, the username of the Contact, orsome other appropriate designation for the Contact. Thus, in oneembodiment, the User must know some information about the Contact inorder to begin the process of adding the Contact to the contact list ofthe User, thereby reducing unwanted requests for authorization frompersons or entities unknown to the desired Contact. Alternatively, theUser can simply input the name of the desired Contact, which can beinput by the User, or can be taken from a user directory 262(illustrated in FIG. 2) which lists one or more of the users of thedatabase 17, as described in greater detail below. Once the User hasinput the required information into the database 17, the Contact canthen be notified by the database 17 or by other means that the User isattempting to establish a data link to exchange information with theContact.

At this point, the Contact can have the option of accepting the request,thereby establishing the reciprocity necessary to exchange information.If the Contact elects to accept the request, the Contact can also beasked to input a clearance level for the User. In other words, becausethe Contact would understand that the User and the Contact will have areciprocal agreement, the Contact can have the opportunity to determinethe extent that the User will be able to access information of theContact from the database 17. Alternatively, the Contact can reject therequest, at which point the User would not have the requiredreciprocity, and would not have access to any of the Contact's data thatmay be stored on the database 17. In this event, the User can benotified of such rejection by the Contact via electronic mail, by amessage from the server 12, or by another mode of accessing the User.Further, in one embodiment, the User can no longer request authorizationfrom such Contact.

With the second protocol, the desired Contact can receive notificationthat the User is attempting to add the desired Contact to the User'scontact list. This notification can be sent to the Contact by electronicmail, or by any other suitable means. Further, the notification caninclude information regarding the functions of the system 10, along witha hyperlink to the website 210 (illustrated in FIG. 2) on which thedatabase 17 can be accessed. Moreover, the desired Contact can berequested to register with the system 10, and accept User's request thatthe User and the desired Contact be linked in order to exchangeinformation from the database 17. Once the desired Contact hasregistered with the system, reciprocity can be achieved using the firstprotocol described above, for example.

FIG. 6G is a portion of a simplified table that can be maintained in thedatabase 17 (shown in FIG. 1) illustrating the requirement forreciprocity between a User and a Contact. In this embodiment, the User670 is identified within the database as “19”. The first column showsidentification numbers of certain Users 670 that have input their datainto the database 17. The second column shows identification numbers ofcertain Contacts 672 that are on the contact list 232 (illustrated inFIG. 4) of the respective Users 670 in the same horizontal row. Thethird column identifies the clearance level 656 that the owner 670 hasassigned to the Contact 672 in the same horizontal row.

For example, the first row 674 shows a User “1”, a Contact “19” and aclearance level of “3”. To the database 17, this means that the Contact“19” is on the contact list of the User “1”, and the User “1” hasassigned a third level clearance level 656 to the Contact “19”. However,in this embodiment, unless another row having reciprocal information ispresent, the database 17 will not allow the exchange of data between theUser “1” and the Contact “19” to occur. As illustrated in the fifth row676, the required reciprocity exists. In the fifth row 676, the User“19” has authorized the Contact “1” at the third level clearance level656. Therefore, because “1” has authorized “19”, and “19 has authorized“1”, the database 17 will allow “1” and “19” to exchange and/or accessthe information of the other.

In contrast, FIG. 6G illustrates that the same reciprocity is notpresent between Users “17” and “19”. In this example, User “17” hasauthorized Contact “19” to access some or all of the data of User “17”in the fourth row 678, but User “19” has not authorized Contact “17” toaccess the data of User “19”. Thus, because there is no reciprocitybetween these Users, no data can be accessed by either User “17” or “19”when reciprocity is required.

FIG. 6H is a flow diagram further illustrating an embodiment of thepresent invention wherein the exchange of data requires reciprocity. Theexample illustrated in FIG. 6H includes two Users utilizing the presentinvention. Although only two Users are described, it should berecognized that the system 10 can be used by thousands or even millionsof Users in the same manner. Further, although FIG. 6H refers to“personal” information and “current contact information”, it isrecognized that the system 10 provided herein is equally effective withall types of information.

In this example, User 1 inputs User 1's data to the database 617 at step680. User 1 also adds User 2 to User 1's contact list at step 682. Inthis embodiment, no information can be exchanged between User 1 and User2 at this point. At step 684, User 2 inputs User 2's data into thedatabase 617. Further, User 2 adds User 1 to User 2's contact list atstep 686. At this point in time, User 1 and User 2 have reciprocalaccess to each other's data. Once User 1 requests User 2's data at step688, the data will be retrieved from the database 617 at step 690 andwill be displayed to User 1 at step 692. Somewhat similarly, once User 2requests User 1's data at step 694, User 1's data will be retrieved fromthe database 617 at step 696 and displayed to User 2 at step 698. Theextent of the data received by each User can vary depending upon theclearance levels and the privacy levels of each User, as providedherein.

Referring back to FIG. 2, the User can view the data 242 input by one ormore of the Contacts on the User's contact list 232. In one embodiment,the User highlights a Contact on the contact list, and selects a “View”option 242. The database 17 (illustrated in FIG. 1) is then queried todetermine if the User is authorized to view the information of thespecific Contact selected, e.g. if reciprocity is required, has theContact authorized the User to access some or all of the Contact's data?If the User is authorized, the clearance level and privacy levelsettings are queried from the database 17.

As an overview, the privacy level settings are queried to determine howsecure or restricted the Contact wants each field of the Contact's datato be. In one embodiment, each data field has a privacy level settingthat can be established by the Contact. In alternate embodiments, onlycertain fields can have privacy level settings. Based on the results ofthe query, the database 17 determines to what extent, if any, the Useris authorized to view the data input into the database 17 by theContact. For example, if the Contact has not authorized the User to viewthe Contact's personal information, then the User is notified by theserver 12 that he or she does not have access to the requested Contact'sinformation. On the other hand, if the Contact has authorized the Userto view any portion of the Contact's information, the information isdisplayed to the User in accordance with the clearance level that hasbeen established by the Contact for the specific User.

FIG. 7A is a flow chart illustrating in greater detail one embodiment ofthe determination by the database 17 (illustrated in FIG. 1) of theextent to which the User can view the Contact's data in the database 17.In this embodiment, a query of whether the User has authorization toview the data from a selected Contact occurs at step 700. As providedabove, authorization can occur when the Contact adds the User to theContact's contact list or otherwise authorizes the User as providedherein. If authorization has not occurred, a “not authorized” message isdisplayed at step 701. At step 702, the specific clearance level by theContact for the selected User is determined.

At step 704, for each data field of the Contact, the privacy level ofthe data field is compared to the clearance level assigned to the Userby the Contact. The privacy level of each data field can be measuredagainst the clearance level to inhibit unauthorized information frombeing provided to the User. At step 706, the database 17 is queried todetermine if the User's clearance level is greater than or equal to theprivacy level setting for a first data field. If it is not, the User isnot allowed to view the first data field at step 708. If the clearancelevel is greater than or equal to the privacy level setting for thefirst data field, the data is retrieved at step 712 for eventual displayto the User.

Regardless of the outcome for the first data field at step 706, thedatabase 17 is then queried to determine if there are additional datafields to review at step 710. If there are additional data fields toreview, e.g. a second data field, then the process returns to step 704,and steps 704 through 710 are repeated until there are no more datafields to review. Once there are no more data fields to review, adisplay of the authorized information is provided to the User at step714.

FIG. 7B illustrates an embodiment of a contact data screen 714B that canbe displayed to a User who has requested to view information from JohnJohnson having a user-specific identifier of #1144, for example. In thisembodiment, the name, birthdate, home address, work address, a pluralityof phone numbers, e-mail addresses and a website of the Contact aredisplayed to the User. It is recognized that FIG. 7B represents only oneof any number of possible displays of information, which can varydepending at least in part upon the information input by the Contact,the clearance level of the User as determined by the Contact, and theprivacy level settings established by the Contact.

The contact data screen 714B can also include hyperlinks which allow theUser to perform various functions directly from the contact data screen714B. For example, the User can use a keyboard, mouse or other device tohighlight and/or click on an electronic mail hyperlink 716, which cantake the User to another screen or electronic mail program which wouldallow the User to compose and send an electronic mail message to theContact. Additionally, the User can access a website input by theContact using a website hyperlink 718. Further, the contact data screencan include a button, control or hyperlink so the User can send theContact a text message, multimedia message or other message 720.

FIG. 7C is an embodiment of a view screen 733 that is accessible with awireless device such as a mobile phone 14D. In this embodiment, once theUser selects one of the User's Contacts, the User can be taken to alisting of current phone numbers and other relevant data that theContact has input into the database 17 (illustrated in FIG. 1). The Usercan then scroll through the data to locate the specific informationsought by the User relative to the Contact. In the event the Userdesires to contact the Contact, the User can highlight and select anappropriate phone number such as the immediate mode of access (not shownin FIG. 7C) to expeditiously call the Contact. Because the Contact hasinput the phone numbers and other data that the User is accessing, theUser has an increased assurance that the data is up-to-date.

FIG. 7D is an embodiment of a text message screen 720D to which the Usercan be taken following such a request by the User from the contact datascreen illustrated in FIG. 7B. In the embodiment illustrated in FIG. 7D,the database 17 (illustrated in FIG. 1) can automatically provide aselection of various phone numbers, pager numbers, or numbers from otherdevices from which the User can choose to send a text message to theContact. For example, the database 17 can automatically set up the textmessage screen 720D to include a data field for the Contact's name ornickname 722, for example. Further, the text message screen 720D caninclude all mobile device numbers 724, the immediate mode of access ofthe Contact, and/or an “other” data field 726 that the User can utilizeto customizably input another number that indicates where the textmessage is to be sent.

In addition, the text message screen 720D can include a data field forthe User's name or nickname 728, and a “call back” or reply number 730for the User, which can be selected from a drop-down menu 732, or from alisting (not shown) taken from the User's data stored on the database17. The text message screen 720D also includes a message data field 734so the User can input a text message. In this embodiment, the textmessage screen 720D can also include a character counter 736.

FIG. 7E is another embodiment of a text message screen 720E that is usedwhen the User desires to send a text message or other type of message.The text message screen 720E illustrated in FIG. 7E is particularlysuited for use with a wireless device such as a mobile phone 14D. In theembodiment illustrated in FIG. 7E, the database 17 (illustrated inFIG. 1) can automatically provide a selection of various numbers 724E,including the Contact's immediate mode of access, or other phonenumbers, pager numbers, or numbers from other devices from which theUser can select to send a text message to the Contact. Further, the textmessage screen 720E illustrated in FIG. 7E can include an “other” datafield (not shown in FIG. 7E) that the User can utilize to customizablyinput another number that indicates where the text message is to besent. In addition, the text message screen 720E can include a “callback” or reply number 730E for the User, which can be selected from alist of numbers previously input by the User and stored in the database17.

FIG. 7F is another embodiment of a text message screen 720F that theUser can be taken to following selection of the appropriate numbers724E, 730E (illustrated in FIG. 7E) on the User's mobile phone 14D.Alternatively, the text message screen illustrated in FIG. 7F can appearwhen the User scrolls up or down from the text message screen 720Eillustrated in FIG. 7E. In this embodiment, the text message screen 720Falso includes a message data field 734F so the User can input a textmessage. Additional functions 736F can be accessed by the User whichallow the User to send or cancel the message, for example.

FIG. 7G is an embodiment of an electronic mail screen 744G that can beaccessed by a User using a mobile device such as a mobile phone 14D. Onthis screen 744G, the User can access one or more electronic mailaddresses 746G of a Contact from the Contact's data stored on thedatabase 17 (illustrated in FIG. 1), from which the User can select theappropriate electronic mail address 748G to use for sending anelectronic mail message to the Contact. Further, the User can alsoselect from one or more previously input electronic mail addresses 750G(only one such address 750G is shown in FIG. 7G) of the User for areturn address.

FIG. 7H is another portion of an electronic mail screen 744H that can beaccessed by a User using a mobile device such as a mobile phone 14D. Onthis screen 744H, the User can input a subject 752H and an electronicmail message 754H to be sent to a specified Contact.

FIG. 8 is an embodiment of a remove contact screen 850 that allows aUser to remove a Contact from the User's contact list 232 (illustratedin FIG. 2). Once the User removes the Contact, the Contact can no longeraccess any data of the User from the database 17 (illustrated in FIG.1). Thus, in this embodiment, any break in the reciprocity ofauthorization between the User and the Contact results in neither theUser nor the Contact having access to the other's data from the database17.

FIG. 9A is an embodiment of a contact properties screen 952 that theUser can access following selection of the properties hyperlink 252(illustrated in FIG. 4A) from the contact list screen 432 (illustratedin FIG. 4A) to view and/or adjust certain properties of one or more ofthe User's Contacts. In the example illustrated in FIG. 9A, the User hasaccessed the properties for Contact John Johnson. The functions includedon the contact properties screen 952 can vary. In the embodimentillustrated in FIG. 9A, the User can (i) view and/or modify a groupsetting 954 of the Contact, (ii) view and/or modify the clearance level956 of the Contact, and/or (iii) view and/or modify a mobile listsetting 958 for the Contact.

The group setting 954 allows the User to determine one or more specificgroups with which the Contact can be associated. For example, the Usercan select from predetermined group settings 954 such as “Business,“Friends”, “Family”, “All”, “Special”, etc., or the User can customizethe name of the group, e.g. “Golf”. The User can specify a group setting954 for one or more Contacts in the User's contact list. Consequently,when the User is scrolling through the User's contact list, the User cantemporarily exclude various Contacts from the list by selecting aparticular group so that the contact list only displays the Contactsthat are members of such group. With this design, locating a particularContact or group of Contacts from the User's contact list can beexpedited.

The User can elect to change the clearance level 956 for one or more ofthe Contacts on the User's contact list. In one embodiment, based on theContact selected by the User from the contact list, the database 17 isqueried to retrieve the appropriate clearance level 956. In thisexample, the User can be presented with the clearance level 956 for theContact, and can then use the drop-down menu 957 to select a newclearance level 956. When the User selects a new clearance level 956 forthe Contact, the database 17 is queried to update the clearance level956 for that Contact. The next time the Contact accesses the data forthe User, the extent of the Contact's access of the User's data will bedetermined by the new clearance level 956 set by the User for thatContact.

Further, in this embodiment, the User can elect to include or excludethe particular Contact from the User's mobile list. The User can utilizethe mobile list setting 958 for each Contact on the User's contact list.By selecting “Include”, the User is choosing to include the Contact andsome or all of the Contact's data from the database 17 (illustrated inFIG. 1) when the User accesses the database 17 from the User's wirelessdevice such as a mobile phone 14D (illustrated in FIG. 1), as explainedin greater detail below. In contrast, the User can elect to “Exclude”the Contact from the User's mobile list using the mobile list setting958. With this design, the User can expedite usage of the User's mobilephone 14D by filtering out various Contacts that the User does not wantto access while using the User's mobile phone 14D or other wirelessdevice.

FIG. 9B is an embodiment of a mobile phone 14D illustrating a mobilephone filter screen 958A. In this embodiment, the screen 958A indicateswhether the mobile phone filter is “on” 960 or “off” 962. In oneembodiment, when the mobile phone filter is on, only the data from thoseContacts whom the User has specified to “Include” on the User's mobilelist can be accessed from the User's mobile phone. Further, when themobile phone filter is off, the User can access some or all of the datafrom each Contact, regardless of whether the Contact has been includedor excluded from the User's mobile list.

Referring again to FIG. 2, in one embodiment, the User can print 260 anyinformation from the database 17 to which the User has access. Forexample, the User can elect to print 260 part or all of the data fieldsinput into the database 17 from one Contact. Alternatively, the User canprint 260 certain data fields from some or all of the Contacts on theUser's Contact list, e.g. all mobile phone numbers and home addressesfor each Contact on the User's contact list as a non-exclusive example.In one embodiment, the User can select specific data fields fromparticular Contacts, and can quickly and efficiently consolidate andprint 260 this up-to-date information on a single page without having topick and choose the data from the display of each Contact. With thisdesign, less time is spent searching, selecting, and manually compilingthe desired information.

Moreover, in one embodiment of the database 17, the User can access adirectory 262 of some or all of the names of the individuals or entitiesthat have registered with the system 10. From this directory 262, theUser can select one or more desired Contacts to add to the User'scontact list 232. For example, in one embodiment, the name of eachindividual or entity can be hyperlinked to allow the User to moreexpeditiously and efficiently request an authorization from suchindividual or entity. In the embodiments that require reciprocity beforedata can be exchanged, the desired Contact must authorize the User toaccess the data of the desired Contact before the User has access to anydata from the desired Contact.

Further, in one embodiment, when the User attempts to add an individualor entity from the directory 262, the User has thereby authorized theContact to access the User's data from the database 17, and the Contactcan immediately access such data by logging in to the database 17. In analternative embodiment, the Contact must first authorize the User beforethe Contact can access the User's data from the database 17.

Each User can have the option of removing or adding that User's namefrom the directory 262. Alternatively, each User can have the option ofincluding such User's name in the directory 262 without including suchUser's name including a hyperlink, thereby disabling any requests forauthorization of such User by other Users via the directory 262.

FIG. 10A illustrates an embodiment of an immediate mode of access screen1064 that the User can reach once the User selects the immediate mode ofaccess function 264 from the contact list screen 432 (illustrated inFIG. 4A). In this embodiment, the database 17 (illustrated in FIG. 1)provides the User with a plurality of potential mode of accessselections 1066 that are taken directly from the User's data input intothe database 17. From the list of various potential modes of access1066, the User can select one mode of access to be the User's immediatemode of access 1068. Stated another way, the immediate mode of access1068 is provided to one or more of the User's Contacts, and representsthe desired manner of reaching the User at that moment from theperspective of the User. In the embodiment illustrated in FIG. 10A, theUser has selected a home phone number, (555) 555-2001, as the User'simmediate mode of access 1068. In an alternative embodiment, theimmediate mode of access 1068 can be selected from a drop-down menu, orthe immediate mode of access 1068 can be manually input into a blankdata field 1070 as illustrated in FIG. 10A. Still alternatively, adefault immediate mode of access 1068 can be one specific data fieldsuch as the User's first mobile phone number, for example.

The immediate mode of access 1068 of the User can be automaticallycommunicated to each Contact on the User's contact list 232 (illustratedin FIG. 4A) that has authorized access to such information. Once theUser changes his immediate mode of access 1068, an authorized Contactwho is logged in or subsequently logs in to the system 10 and retrievesthe User's data will be provided with the updated immediate mode ofaccess 1068 of the User. With this design, the guesswork normallyrequired by a User in attempting to determine how to reach one of theUser's Contacts is reduced or eliminated entirely.

FIG. 10B is an embodiment of a mode of access schedule screen 1072 thatthe User can utilize. The design of the mode of access schedule screen1072 can vary depending upon the specific needs of the User and to suitthe design requirements of the system 10 and the database 17(illustrated in FIG. 1). In this embodiment, the database 17 can compilepreviously-input data by the User or newly input data by the User, andcan provide a selection of various potential modes of access 1066 forthe User. The User can then preset the User's anticipated immediate andfuture modes of access for various time periods. For example, in theembodiment illustrated in FIG. 10B, the schedule includes a plurality ofone-hour time periods 1074 and an eleven-hour time period 1076 over aone-day time frame. However, it is recognized that the mode of accessschedule can utilize any desired time periods over any extended timeframe, as input by the User and/or specified by the database 17. Forexample, the time periods can be ten-minutes each, and the time framecan be one hour. Alternatively, the time periods can be 12-hours each,and the time frame can be one week. The foregoing examples are merelyrepresentative of the numerous possible time periods and time framesthat can be utilized with the present invention.

As illustrated in FIG. 10B, the User can select one immediate mode ofaccess 1068, e.g. a home phone number 1078, which can remain in effectfor the entire time frame, e.g. one day. In this embodiment, the Userchooses to be accessible at the same phone number for the entire day.

FIG. 10C is another mode of access schedule screen 1072 wherein theselections made by the User have been modified from the previousschedule illustrated in FIG. 10B. In this example, the User hasgenerated and selected a Schedule A (1080), which can represent one ormore particular days of the week, i.e. Mondays and Fridays, or it canrepresent a one-of-a-kind day that the User anticipates having. Forexample, the User expects to be accessible by the User's home phonenumber from approximately 8 a.m. to 9 a.m. Between 9 a.m. and 10 a.m.,the User expects to be accessible on the User's mobile phone. Between 10a.m. and 12 p.m., the User expects to be accessible by the User's workphone number, and so forth throughout the day. With this design, theUser can preset the User's mode of access schedule for convenience, orin the event the User may not have access to the database 17(illustrated in FIG. 1) at various times during the day, week, month,etc. In this embodiment, the immediate mode of access 1068 that can beaccessed by one or more of the User's Contacts will be automaticallyupdated throughout the day, and will allow authorized Contacts on theUser's contact list to access only the current information, e.g. theimmediate mode of access 1068 of the User.

Schedule A can be saved to the database 17, and can be retrieved by theUser and reused by the User as appropriate. In this embodiment, the modeof access schedule and/or the future modes of access cannot be accessedby any of the User's Contacts. Instead, any of the User's Contacts withaccess to the User's immediate mode of access 1068 can access only theimmediate mode of access 1068 from the active time period, i.e. the timeperiod that represents the current time of day. In one embodiment, theContact does not have access to the time period so that the Contact doesnot know how long the current immediate mode of access 1068 will remainin effect before changing to another immediate mode of access 1068.Stated another way, the User's mode of access schedule is transparent tothe User's Contacts. Alternatively, the User can provide Contacts accessto the User's schedule in accordance with the clearance levels andprivacy levels provided herein.

FIG. 10D is another mode of access schedule screen 1072 wherein theselections made by the User have been modified from the previousschedule illustrated in FIG. 10C. In this example, the User hasgenerated and selected a Schedule B (1082), which can represent one ormore particular days of the week, i.e. Tuesdays through Thursdays, or itcan represent a unique day that the User anticipates having.

Schedule B can likewise be saved to the database 17 (illustrated in FIG.1), and can be retrieved by the User and reused by the User asappropriate.

In an alternative embodiment, a schedule somewhat similar to the mode ofaccess schedule can be used for any other data field input by the User.For example, the schedule can track other information from the User thathas a tendency to change over time, such as the User's physicallocation, as one non-exclusive example. The foregoing mode of accessschedule is representative of the type of information that can beincluded in a schedule as provided herein, and is not intended to belimiting in any way.

FIG. 11 is an embodiment of a synchronization screen 1184 generated bythe database 17 (illustrated in FIG. 1) that is accessible with awireless device such as a mobile phone 14D. In this embodiment, a Usercan synchronize the data from the User's Contacts with a memory 1186 ofthe wireless device. For example, the memory 1186 can include one ormore storage devices that store names, addresses, phone numbers, etc.The memory 1186 can be in the form of an integrated circuit such asrandom access memory (RAM), a single in-line memory module (SIMM), astorage disk, a storage tape, a processor, or any other suitable devicethat can store data.

In this embodiment, the data that is maintained in the database 17 forone or more of the User's Contacts can manually or automatically besynchronized with the memory 1186 of the mobile phone 14D or otherwireless device. With this design, the User can update the memory 1186of the wireless device with the up-to-date data from the database 17,thereby increasing the likelihood of maintaining more current, accuratedata within the memory 1186 of the wireless device. By synchronizing thedynamic information stored and continually updated in the database 17with the memory 1186 of the wireless device, the User can increase theprobability of having access to current data from the User's wirelessdevice, even when the User cannot access the database directly from theInternet. For example, it is well known that in certain geographicallocations it is difficult or impossible to obtain Internet access. Thepresent invention allows the User to rely on the memory 1186 of theUser's wireless device which has been synchronized with the data fromthe database 17, without the User having to manually update the memory1186 for each of the User's Contacts.

The synchronization of data between the database 17 and the memory 1186of the wireless device can be customized by the User. In one embodiment,the User can synchronize specific data fields from the database 17 tothe memory 1186 of the wireless device. For example, the User can chooseto synchronize only the immediate mode of access for one or moreContacts with the memory 1186 of the wireless device. Provided this typeof synchronization occurs on a routine basis, the User can be relativelycertain of having access to the immediate mode of access of eachContact, without connecting to the system 10 via the Internet.Alternatively, the User can synchronize other data fields, such as allmobile phone numbers or electronic mail addresses of the User'sContacts, as non-exclusive examples.

In one embodiment, the User can manually determine when to synchronizedata from the database 17 with the memory 1186 of the wireless device.In an alternative embodiment, the User can determine the frequency thatthe database 17 will automatically perform this synchronization process.For instance, with various wireless devices having the appropriateapplication technology, the User can specify that the database 17 willinterface with the wireless device over the Internet and synchronize thespecified data at any regular time intervals, such as at leastapproximately one time per week, one time per day, one time per hour,one time per minute, one time per second, continuously, or anytime amodification is made to a relevant data field for one of the User'sContacts, as non-exclusive examples. Still alternatively, the database17 can interface with the wireless device over the Internet andsynchronize relevant data from the database 17 when the User firstconnects to the Internet, or logs in to the website 210 (illustrated inFIG. 2) of the present invention.

FIG. 12 is a diagram illustrating one embodiment of how data is storedin the database 1217. As described herein, multiple Users can have thesame Contact in each of the Users' contact list. However, in thisembodiment, only one data record is maintained in the database 1217 forsuch Contact. Thus, in FIG. 12, User #1, User #2 and User #3 each haveadded Josh McGosh to their respective contact lists. The database 1217has stored only one Josh McGosh, under a unique database identifiernumber “4”. Therefore, when one or more of the Users want to access datainput into the database 1217 by Josh McGosh, the database is queried,the appropriate determination of authorization (and reciprocity, ifrequired) can be performed as provided herein, a comparison of theclearance levels for the Users and privacy levels for the data input byJosh McGosh can be performed as provided herein, and the data madeavailable to the Users from a single location within the database 1217.

Stated another way, storage of a single set of data for each User in thedatabase 1217 decreases the likelihood of inaccuracies of the data, andconserves space within the database 1217 by avoiding duplicative entriesand/or data fields. In the example provided in FIG. 12, the data foreach User or Contact takes up a reduced amount of space in the database,regardless of the number of other Users who have listed such User orContact in their respective contact lists. Additionally, because thedata of all of a User's Contacts is not stored on the User's device,little or no storage space is required by the User during usage of thepresent invention.

The present invention is particularly suited to a User having aplurality of Contacts in the User's contact list. With the designprovided herein, because each Contact is responsible for updating onlythat Contact's own information, time spent by the User updating theUser's Contact information can be substantially reduced or eliminated.For Users having a substantial number of Contacts in their contact list,this time reduction can be significant.

Moreover, in various embodiments, the present invention does not dependon synchronization of data between devices in order to keep dataconsistent. Personal, business or any other type of information for eachUser of the system is stored in the database 1217 and can be securelyretrieved from any device as provided herein. Thus, Users do not need toconstantly, or even occasionally synchronize data between two of theUser's devices in order to maintain a high level of confidence that thedata will be the same on each device.

Further, in alternative embodiments that utilize mobile devices thatcannot connect internet access, the User can send information viaInfrared (IR), Universal Serial Bus (USB), Firewire (IEEE), ShortMessage Service (SMS), Multimedia Message Service (MMS), or EnhancedMessage Service (EMS), as non-exclusive examples, to the mobile deviceof the User. Mobile devices can also be synchronized to a personalcomputer using messaging technology such as or any other suitablemessaging technology. With this design, blocks of Contact Informationare sent in a SMS or MMS message from the Contact Information Servicewebsite to a phone number of the wireless device.

The present invention can be used in applications too numerous to listherein. In one embodiment, the present invention can be used to maintaina real time, updated address book that includes useful information thatmay be difficult or impossible to obtain by means other than keeping aphysical address book that must be constantly updated by hand, assumingthe information is readily available. Other examples of applications forthe present invention include using the database 17 in the serviceindustry to track the status of automobile repair work, in the insuranceindustry to track information from the insureds, in the financialindustry to track investments and investor information as well as thestock market, in the real estate business to track information frompotential buyers and sellers, and in the sales business to trackinformation from customers and potential customers, as non-exclusiveexamples. Further, medical research, including medical conditions ofpatients can be monitored over a time following medical procedures inorder to provide the medical community with a greater pool of data fromwhich to draw for fostering advances in medicine. Moreover, trackingmedical patients in need of medical services, e.g. transplant donors orpotential recipients, can be easily and efficiently performed using thepresent invention.

Because all of the data input by the Users of the system 10 can bemaintained on the database 17, and because no downloading of software orother applications is necessary, if the User's electronic device is everlost, stolen, broken or destroyed, or if the data on the device becomeslost or unusable, i.e. in the case of a hard drive crash or other systemmalfunction, the user does not need to completely reprogram the deviceand re-enter all of the data onto the device. Further the presentinvention obviates the need to obtain the lost data from a backupsystem, which may also be not entirely up-to-date. Such an unpleasantexperience can be extremely frustrating and can require a significantamount of time which most people cannot afford to spend.

Thus, the system provided herein can allow each User to keep track ofthe User's Contacts, without requiring any maintenance to do so.Further, the present invention can increase the likelihood that businessand/or personal contact information, or any other dynamic data isup-to-the-second accurate with a substantially reduced level of time andeffort required by the User. Moreover, the system and method providedherein can increase the success rate of accessing a Contact by the modedesired by that Contact. In addition, the system and method can be usedfrom nearly any Internet-accessible computer, which are basicallyubiquitous around the world.

While the particular system 10 and method for exchange of data as hereinshown and disclosed in detail are fully capable of obtaining the objectsand providing the advantages herein before stated, it is to beunderstood that they are merely illustrative of various embodiments ofthe invention. No limitations are intended to the details ofconstruction or design herein shown other than as described in theappended claims.

What is claimed is:
 1. A system for transmission of data between a firstdevice operated by a first user and a second device operated by a seconduser, the system comprising: a database that is configured to be innetwork communication with the first device and the second device, thedatabase being configured to receive a first set of data input by thefirst user and a second set of data input by the second user, thedatabase being configured to allow the second user to access a firstportion of the first set of data only after the second user authorizesthe first user via the database to access a first portion of the secondset of data.
 2. The system of claim 1 wherein the database is configuredto allow the second user to have access to the first portion of thefirst set of data from the database only after the first user authorizesthe second user via the database to access the first portion of thefirst set of data from the database.
 3. The system of claim 1 whereinone of the first portion of the first set of data and the first portionof the second set of data includes video data.
 4. The system of claim 1wherein one of the first portion of the first set of data and the firstportion of the second set of data includes audio data.
 5. The system ofclaim 1 wherein one of the first portion of the first set of data andthe first portion of the second set of data includes geographic locationinformation.
 6. The system of claim 1 wherein one of the first portionof the first set of data and the first portion of the second set of dataincludes visual data.
 7. The system of claim 1 wherein one of the firstportion of the first set of data and the first portion of the second setof data includes textual data.
 8. The system of claim 1 wherein each ofthe first portion of the first set of data and the first portion of thesecond set of data are selected from the group consisting of video data,audio data, geographic location information, visual data and textualdata.
 9. The system of claim 1 wherein one of the first device and thesecond device is a mobile phone.
 10. The system of claim 1 wherein eachof the first device and the second device is a mobile phone.
 11. Thesystem of claim 1 wherein the first portion of the first set of datachanges periodically over time, wherein the second device is a mobilephone having a storage device, and wherein the database is configured toautomatically update the storage device of the mobile phone with thefirst portion of the first set of data at regular time intervals. 12.The system of claim 1 wherein the first portion of the first set of datachanges periodically over time, wherein the second device is a mobilephone having a storage device, and wherein the database is configured toautomatically update the storage device of the mobile phone with thefirst portion of the first set of data whenever a modification to thefirst portion of the first set of data occurs.
 13. A method fortransmitting data between a first user and a second user, the methodcomprising the steps of: a first user inputting a first set of data intoa database; a second user inputting a second set of data into thedatabase; and the database authorizing access to the second user to afirst portion of the first set of data from the database only after thesecond user authorizes the first user to access at least a first portionof the second set of data from the database.
 14. The method of claim 13wherein the step of the database authorizing includes the first userauthorizing the database to allow the second user to access the firstportion of the first set of data from the database.
 15. The method ofclaim 13 wherein the step of the first user inputting includes the firstuser using a first device to input the first set of data, and furthercomprising the step of the first user accessing the first portion of thesecond set of data from the database using a second device that iselectrically decoupled from the first device.
 16. The method of claim 13wherein one of the first portion of the first set of data and the firstportion of the second set of data includes video data.
 17. The method ofclaim 13 wherein one of the first portion of the first set of data andthe first portion of the second set of data includes audio data.
 18. Themethod of claim 13 wherein one of the first portion of the first set ofdata and the first portion of the second set of data includes geographiclocation information.
 19. The method of claim 13 wherein one of thefirst portion of the first set of data and the first portion of thesecond set of data includes visual data.
 20. The method of claim 13wherein one of the first portion of the first set of data and the firstportion of the second set of data includes textual data.